﻿using Sharp.Domain.Model;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Sharp.Domain.PlatformBoundedContext.OAuthModule
{
    /// <summary>
    /// 客户端
    /// </summary>
    public class Client : IAggregateRoot<int>
    {
        /// <summary>
        /// Id
        /// </summary>
        public int Id { get; set; }

        /// <summary>
        /// Client Id
        /// </summary>
        public string ClientId { get; set; }
        /// <summary>
        /// 密钥
        /// </summary>
        public string ClientSecret { get; set; }
        /// <summary>
        /// 转向
        /// </summary>
        public string RedirectUri { get; set; }
        /// <summary>
        /// 授权码模式
        /// </summary>
        /// <remarks>授权码模式(authorization_code) 简化模式(implicit) 密码模式(password) 客户端模式(client_credentials)</remarks>
        public string GrantTypes { get; set; }

        /// <summary>
        /// 范围
        /// </summary>
        public string Scope { get; set; }

        /// <summary>
        /// 用户Id
        /// </summary>
        public int UserId { get; set; }
    }
}